package com.dream.cloud.config;

import feign.Logger;
import feign.Retryer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class FeignConfig {


    @Bean
    public Retryer myRetryer() {

        // 第一个参数：等待时间，第二个参数：最大等待时间，第三个参数：重试次数
        //yml中设置了超时时间是3秒，所以第一次请求，3秒后没返回结果，进入下一步。由于period是4秒，所以再等待4秒，触发重试，3秒后再次没有结果，抛异常。因为重试次数是2，所以总共只会调用2次。
        //注意，正常来说第一次重试间隔时间会变成period*1.5,但是不能超过maxPeriod
//        return new Retryer.Default(4000,5000,2);
        return Retryer.NEVER_RETRY;
    }

    @Bean
    Logger.Level feignLoggerLevel() {
        return Logger.Level.FULL;
    }





}
